Cloud One Workload SecurityのエージェントインストールをSystems Manager Run Commandで実行する

Cloud One Workload SecurityのエージェントインストールをSystems Manager Run Commandで実行する

Clock Icon2024.09.04

はじめに

こんにちは。AWS事業本部コンサルティング部に所属している和田響です。

Cloud One Workload Securityを利用する際に、複数のEC2インスタンスにインストールスクリプトを実行するのがやや面倒だったので、Systems ManagerのRun Commandをで一括で実行してみました。

同時実行の条件としては以下2点です。

  • 対象のEC2インスタンスがマネージドインスタンスである
  • 対象のEC2インスタンスが同じOSで起動している
  • 対象のEC2インスタンスがすべて同じセキュリティポリシーを使用する

Cloud One Workload Securityとは

Cloud One Workload Securityとは、トレンドマイクロ株式会社の提供するサーバ保護に必要な複数のセキュリティ機能を、仮想化・クラウド・物理環境にまたがって一元的に提供するSaaS型のセキュリティサービスです。

AWS環境のEC2インスタンスにも導入可能で、そのためには専用のエージェントインストールする必要があります。

https://www.trendmicro.com/ja_jp/business/products/endpoint-security/workload-security.html

Systems Manager Run Commandとは

Systems Manager Run Commandは、SSMエージェントをインストールしたインスタンスに対し、ドキュメントとしてあらかじめ用意したタスクをコマンドとして実行できる機能です。 簡単にいうと、AWS Systems Managerからリモートでコマンド実行などの操作が可能になります。

やってみる

準備

今回は以下の2台のEC2インスタンスを用意しました。

  • test-c1ws-1
  • test-c1ws-2

Amazon Linuxで起動しているためSSMエージェントはデフォルトでインストール済みです。
AmazonSSMManagedInstanceCore のIAMポリシーを許可したIAMロールをアタッチしてあります。
スクリーンショット 2024-09-04 15.16.41.png

Workload SecurityはAWSアカウントと連携済みで、コンソールに現在起動しているEC2インスタンスの一覧が表示されている状態です。(ステータスが非管理対象となっているためエージェントは未インストールです)
スクリーンショット 2024-09-04 14.59.51.png

Cloud Oneアカウントの作成やAWSアカウントの連携がまだの方はこちらをご確認ください。
https://dev.classmethod.jp/articles/slug-vwvpbVcyRYFB/

インストールスクリプトの生成

Workload Securityのコンソールの右上のタブから「サポート情報」-「インストールスクリプト」をクリックします。
スクリーンショット 2024-09-04 15.35.21.png

今回はAmazon LinuxのEC2インスタンスのため、プラットフォームは Linux版Agentのインストール を選択します。
セキュリティポリシーはとくに考慮しないため Base Policy を指定します。
スクリーンショット 2024-09-04 15.38.09.png

「クリップボードにコピー」をクリックし、インストールスクリプトをコピーします。
スクリーンショット 2024-09-04 15.43.32.png

Systems Manager Run Commandの実行

AWS Systems Managerのコンソールの再度タブから「Run Command」をクリックします。
スクリーンショット 2024-09-04 15.51.53.png

「Run Command」をクリックします。
スクリーンショット 2024-09-04 15.53.16.png

コマンドドキュメントから「AWS-RunShellScript」を選択します。
(AWS-RunShellScriptはLinux環境でシェルスクリプトを実行するか、またはスクリプトを実行するパスを指定できます。)
スクリーンショット 2024-09-04 15.56.26.png

「Commands」に前述の手順でコピーしたインストールスクリプトをペーストします。
スクリーンショット 2024-09-04 16.01.45.png

ターゲットにエージェントをインストールするEC2インスタンスを選択します。
ターゲットの指定方法はいくつかありますが、今回は「インスタンスを手動で選択する」より、個別に対象のEC2インスタンスを選択します。
スクリーンショット 2024-09-04 16.03.52.png

※エージェントをインストールしたいEC2インスタンスが表示されない場合は以下の条件が揃っていない(マネージドインスタンスになっていない)可能性があります。

  • SSMエージェントがインストール・有効化されていない
  • AmazonSSMManagedInstanceCore のIAMポリシーを許可したIAMロールがアタッチされていない
  • マネージドコンソールからEC2インスタンスへの接続経路が確立できていない(IGW,NATGW,エンドポイント等)

詳細は以下を確認ください。
https://repost.aws/ja/knowledge-center/systems-manager-ec2-instance-not-appear

内容を確認し「実行」をクリックします。
スクリーンショット 2024-09-04 16.10.40.png

エラーなくスクリプトが実行できたようです。
スクリーンショット 2024-09-04 16.13.56.png

Workload Securityのコンソールに戻ると、インストールスクリプトを実行したEC2インスタンスのステータスが「管理対象(オンライン)」になっており、無事にエージェントがインストールできたことが確認できました。
スクリーンショット 2024-09-04 16.15.23.png

最後に

今回は複数あるEC2インスタンスに対してWorkload Securityのエージェントインストールスクリプトを同時実行する方法として、Systems Manager Run Commandを使ってみました。

個別にEC2インスタンスに接続してスクリプトを実行する手間が省けました。

同じ環境の数十台単位のEC2インスタンスに対してWorkload Securityを導入する必要がある際などに参考にしていただければと思います。

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.